from dotenv import load_dotenv
from fastapi import APIRouter, Depends
from sqlalchemy.orm import Session

from app.db.sql import resource_history_data
from app.schemas.platform import GetResourceHistoryDataRequest
from common.database import get_db
from common.http import ok_response

router = APIRouter(tags=["platform-history"])
router.prefix = "/v2"
load_dotenv()


@router.post("/getResourceHistoryData")
def get_resource_history_data(
        payload: GetResourceHistoryDataRequest, db: Session = Depends(get_db)
):
    """
    2.8
    虚拟电厂平台向负荷聚合平台请求历史负荷数据。

    由虚拟电厂平台调用负荷聚合平台，获取某个的历史负荷数据信息（1分钟间隔）；每次查询时间范围为3天以内；历史数据可以查询1个月内。
    """
    ret = resource_history_data.get_data(
        db, payload.resourceId, payload.startTime, payload.endTime
    )
    return ok_response(ret)
